Programming Language Notes
نویسنده
چکیده
A programming language is a mathematical calculus, or formal language. Its goal is to express algorithms in a manner that is unambiguous to people and machines. Like any calculus, a language’s notation contains both syntax and semantics. Since syntax can be easily translated, the semantics are more fundamental. Church and Turing showed that the minimal semantics of the Lambda Calculus and Universal Turing Machine are sufficient to emulate the semantics of any more complicated programming language or machine. Reducing a particular language to the Lambda Calculus may require holistic restructuring of programs in that language. We say that a particular language feature (e.g., continuations, macros, garbage collection) is expressive if it cannot be emulated without restructuring programs that use it.
منابع مشابه
synERJY An Object-oriented Synchronous Language
The programming language synERJY is presented. It integrates object-orientation and synchronous formalisms in the spirit of Esterel, Lustre, and Statecharts.
متن کاملCompilation of Interaction Nets
This paper is about a new implementation technique for interaction nets—a visual programming language based on graph rewriting. We compile interaction nets to C, which offers a robust and efficient implementation, in addition to portability. In the presentation of this work we extend the interaction net programming paradigm to introduce a number of features which make it a practical programming...
متن کاملLecture Notes on Language-Based Security
These lecture notes discuss language-based security, which is the term loosely used for the collection of features and mechanisms that a programming language can provide to help in building secure applications. These features include: memory-safety and typing, as offered by so-called safe programming languages; language mechanisms to enforce various forms of access control (such as sandboxing),...
متن کاملSet Types and Applications
We present pml, a programming language that includes primitive sets and associated operations. The language is equipped with a precise type discipline that statically captures dynamic properties of sets, allowing runtime optimizations. We demonstrate the utility of pml by showing how it can serve as a practical implementation language for higher-level systems: it can express several forms of pr...
متن کاملEclipse Support for Using Eli and Teaching Programming Languages
This demonstration will show Eclipse plugins developed at Macquarie and Colorado to support the Eli Language Processor Generation system and to enhance teaching of programming language concepts and implementation techniques. The plugins support exploration of programming language semantics, integrated development in the Eli system, and high-level observations of compiler execution.
متن کاملProgramming Autonomous Robots in Curry
In this paper we present a framework to program autonomous robots in the declarative multi-paradigm language Curry. This is an experiment to use high-level declarative programming languages for the programming of embedded systems. Our programming model is based on a recent proposal to integrate a process-oriented specification language in Curry. We show the basic ideas of our framework and demo...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2009